package collection;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
/**
 * 集合操作
 */
public class CollectionDemo4 {
    public static void main(String[] args) {
        /**java.util.List:线性表，可以存放重复元素且有序。
         * java.util.Set:不可存放重复元素。
         */
        Collection c = new HashSet();
        c.add("java");
        c.add("c++");
        c.add("c");
        System.out.println("c:"+c);
        /**
         * boolean add(E e)
         * 向当前集合中添加一个元素，该元素成功添加到集合中则返回true.
         */
        Collection co = new ArrayList();
        co.add("zbc");
        co.add("ios");
        co.add("java");
        System.out.println("co:"+co);
        /**
         * boolean addAll(Collection c)
         * 将给定集合中的所有元素添加到当前集合中，如果添加后当前集合发生了改变则返回true.
         */
        c.addAll(co);//由c1是不可重复集合因此c2中的java不能再次存入c1中.
        co.addAll(c);
        System.out.println(c);
        System.out.println(co);
        /**
         * boolean containAll(Collection c)
         * 判断当前集合是否包含给定集合中的所有元素.
         */
        Collection c3 = new ArrayList();
        c3.add("java");
        c3.add("c++");
//        c3.add("obj");//false
        boolean containsAll = c.containsAll(c3);
        System.out.println("c是否包含c3:"+containsAll);
        /**
         * boolean removeAll(Collection c)
         * 删除当前集合中与给定集合的共有元素(给定集合的元素,不会被删除).
         */
        c.removeAll(c3);
        System.out.println("c:"+c);
        System.out.println("c3:"+c3);


    }
}
